There are numerous computational problems requiring a search through a huge number of entries. These problems often require computer programs to perform well also in whenever its environment is changing. As one approach to overcome these challenges, principles of evolution have inspired computational algorithms with great efficiency. One of these types of algorithms is the genetic algorithm.
Concisely stated, a genetic algorithm is a programming technique that mimics biological evolution as a problem-solving strategy. Furthermore, it is a search technique to find approximate solutions to optimization and search problems. Genetic algorithms are particularly applicable to solve problems where the space of all potential solutions is too vast for an exhaustive search within limited time. Genetic algorithms have been applied to scientific and engineering problems and they have been widely used in optimization problems. In addition, genetic algorithms have been applied to automatic programming (evolution of computer programs), machine learning (classification, prediction) and modelling processes in economics and immune systems, ecological processes, population genetics, evolution and learning and in social behaviour in social systems.
The method in genetic algorithms is to move from one population of “chromosomes” to a new population by using something to mimic natural selection of evolution together with operators known from genetics, such as crossover and mutation. Each chromosome consists of genes, each of which represent a particular feature of an individual, and its value represents how this feature is expressed in the solution, or chromosome. The selection operators choose the chromosomes in the population that are allowed to reproduce. In average, the chromosomes with better fit produce more offspring than the less fit ones.
The solutions of genetic algorithms may be represented with context vectors. They are high-dimensional information representations that encode the semantic content of the textual entities they represent. These high-dimensional vectors consist of real-valued numbers or components.
Recommendations have become essential in creating additional value for mobile service providers. Contexts play a focal role in understanding what the users of a mobile service want or need. Thus, understanding user's context and acting based upon it is of the utmost importance for a mobile service to be successful. On a more general approach, it can be said that there are numerous computational problems, the purpose of which is to predict the behaviour of an entity, and for these problems genetic algorithms are applicable. Also, genetic algorithms can be used for understanding the context of a user and making recommendations thereafter.
In the patent application EP 2,249,261 Arpit Mathur presents a recommendation system which is based on social networking. In the presented approach preference information of a user is a necessity. Content item, which is accessed by a member of the same group as the said user, is recommended to the user based on this group relation. This is also known as collaborative filtering.
Content-based filtering is utilized in the patent application WO 2,009,146,489 by Dalgleish Andrew Robert. An item is recommended to a user by using rules, which determine the links between item features and the user's personal features.
Fishman Alex and Chai Chai Crx K. introduce a community-based recommendation engine in the patent application U.S. 2,010,064,325. User receives a content recommendation from her contact. The recommendation engine determines the action to be performed according to the recommendation and on one or more rules, such as trust level of the contact, etc.
Based on similar relevance values as above, such as trust or similarity between the search user and the entity providing the search results, a recommendation system is presented in the patent application U.S. 2,011,010,366 by Varshaysky Roy et al. The entities may be virtually anything. The relationships between the user and the entity may be created through many different contact mechanisms and may be unidirectional, asymmetric bidirectional, or symmetric bidirectional relationships. The relationships may be different based on topic or other factors.
In the patent application EP 2,207,348 Barbieri Mauro and Pronk Serverius examine the challenges related to insufficient metadata. They present an apparatus for controlling of a recommender system which provides recommendations for a new, unknown domain, or area of interest, by using one or more user profiles from other, known domains. This is achieved by forming or using translations or relations between the known domains and the new domain, and by exploiting these translations or relations to extend the profiles in the known domains into the new domain.
Becker Ralf et al. present an invention (patent application EP 2,242,259) optimized for cross-domain recommendations by enabling the issuing of a recommendation for related predetermined content at a particular appropriate timing. Taken into account in the process are current broadcast content, past and future programs available from a service network and the user's viewing history.
Foster Benjamin et al. describe in the patent application U.S. 2,010,325,011 a method to facilitate generating listing recommendations to a user of a network-based commerce system. This method identifies a search term that corresponds to a category of items, which includes a plurality of listings hosted by a network-based system. Furthermore, a recommendation query is generated that includes the identified search term. A listing is identified from the plurality of listings as a recommended listing. The identification is based on the recommendation query.
Based on user's listings representing items for sale on the marketplace, user profile is formed, in the patent application WO 2,010,114,903 by Kassaei Farhang. The user profile is compared with other similar users who have subscribed to various applications, and the impact those applications have had on the metrics of the similar users is calculated in order to determine what impact the applications will have on the user in question. The impact, combined with user preferences, is used to suggest appropriate applications to the user.
Murphy Shawn M. et al. present in the patent application U.S. 2,010,325,205 an event recommendation service. Known selection data is compared with media content selected by a user, location data that corresponds to location of the user and event data are used to make recommendations of events the user is likely to attend.
Thus many prior art solutions somewhat regrettably disclose users' personal history or personal preferences in a process of requesting a recommendation. Yet, constructing a recommendation system seems to require various tedious preparatory stages of collecting and processing metadata.